<?php

/**
 * MULTAS actions.
 *
 * @package    OPENBIBLIOSOFT
 * @subpackage MULTAS
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 12479 2008-10-31 10:54:40Z fabien $
 */
class MULTASActions extends sfActions{
	
	/**
	 * Executes index action
	 *
	 * @param sfRequest $request A request object
	 */
	public function executeIndex(sfWebRequest $request)
	{
		if($this->getUser()->getAttribute('codigoUsuario') == null)
		{
			return  $this->renderText("<script type='text/javascript'> window.location = 'Entrada'; </script> ");
		}
	}
	
	/**
	 * Ejecuta accion consultar multa de un usuario
	 */
	public function executeConsultar(){
		$codigoUsr = $this->getParameter('codigoUsr');
		$usuario = UsuarioPeer::retrieveByPK($codigoUsr);
		$valorMulta = $usuario->getValorMulta();
		
		return  $this->renderText('({"total":"'.$valorMulta.'"})');
	}
	
	/**
	 * Ejecuta accion pagar multa de un usuario
	 */
	public function executePagar(){
		$codigoUsr = $this->getParameter('codigoUsr');
		$usuario = UsuarioPeer::retrieveByPK($codigoUsr);
	
		if( $usuario->countVencidos() > 0 ){
			return  $this->renderText("({success: false, errors: { reason: 'No se puede cancelar multa, tiene libros vencidos'}})");
		}else{
			if( $usuario->countMultas() > 0 ){
				try{
					$usuario->deleteMultas();
				}catch (Exception $e){
					return  $this->renderText("({success: false, errors: { reason: 'Exception: No se pudo eliminar la multa'}})");
				}
			}else{
				return  $this->renderText("({success: true, mensaje:'Usuario no posee multas'})");
			}
		}
	}
}
